/*
    SUSAN® - Sole of Unix Save ANything

   
      Copyright (C) 2011-2016 Skyatlas Co. LTD

   

   
*/

#ifndef BAREOS_LIB_CONFIGURED_TLS_POLICY_GETTER_H_
#define BAREOS_LIB_CONFIGURED_TLS_POLICY_GETTER_H_

#include "lib/tls_conf.h"

#include <memory>
#include <string>

class ConfiguredTlsPolicyGetterPrivate;
class ConfigurationParser;

class ConfiguredTlsPolicyGetter {
 public:
  ConfiguredTlsPolicyGetter(const ConfigurationParser& my_config);
  ~ConfiguredTlsPolicyGetter();
  bool GetConfiguredTlsPolicyFromCleartextHello(
      const std::string& r_code_str,
      const std::string& name,
      TlsPolicy& tls_policy_out) const;

 private:
  std::unique_ptr<ConfiguredTlsPolicyGetterPrivate> impl_;
};

#endif  // BAREOS_LIB_CONFIGURED_TLS_POLICY_GETTER_H_
